//
//  UIContentModeCellModel.swift
//  iPhone
//
//  Created by Toj on 6/12/23.
//

import UIKit

class UIContentModeCellModel: NSObject {
    let placeholder = "com_placeholder_168x83"
    var url = ""
    
    var contentMode: UIView.ContentMode
    
    init(contentMode: UIView.ContentMode) {
        self.contentMode = contentMode
    }
}

extension UIView.ContentMode {
    var title: String {
        switch self {
        case .scaleToFill:
            return "scaleToFill"
        case .scaleAspectFit:
            return "scaleAspectFit"
        case .scaleAspectFill:
            return "scaleAspectFill"
        case .redraw:
            return "redraw"
        case .center:
            return "center"
        case .top:
            return "top"
        case .bottom:
            return "bottom"
        case .left:
            return "left"
        case .right:
            return "right"
        case .topLeft:
            return "topLeft"
        case .topRight:
            return "topRight"
        case .bottomLeft:
            return "bottomLeft"
        case .bottomRight:
            return "bottomRight"
        @unknown default:
            return "default"
        }
    }
    
    var descrip: String {
        switch self {
        case .scaleToFill:
            return "填充满视图, 图片可能会被拉伸/ 缩放, 经常使用"
        case .scaleAspectFit:
            return "按最小宽高等比例缩放(缩放最小填充比例), 图像两侧可能会显示空白区域, 经常使用"
        case .scaleAspectFill:
            return "按最大宽高等比例缩放(缩放最大填充比例, 超出部分会被裁剪), 用的少"
        case .redraw:
            return "填充满视图, 单视图的尺寸位置发生改变通过setNeedDisplay方法来重新显示, 用的少, 描述不全"
        case .center:
            return "保持图片原比例在视图 显示 中间 内容, 不缩放,相对边缘对齐, 用的少"
        case .top:
            return "保持图片原比例在视图 显示 顶部 内容, 不缩放,相对边缘对齐, 用的少"
        case .bottom:
            return "保持图片原比例在视图 显示 底部 内容, 不缩放,相对边缘对齐, 用的少"
        case .left:
            return "保持图片原比例在视图 显示 左侧 内容, 不缩放,相对边缘对齐, 用的少"
        case .right:
            return "保持图片原比例在视图 显示 右侧 内容, 不缩放,相对边缘对齐, 用的少"
        case .topLeft:
            return "保持图片原比例在视图 显示 左上 内容, 不缩放,相对边缘对齐, 用的少"
        case .topRight:
            return "保持图片原比例在视图 显示 右上 内容, 不缩放,相对边缘对齐, 用的少"
        case .bottomLeft:
            return "保持图片原比例在视图 显示 左下 内容, 不缩放,相对边缘对齐, 用的少"
        case .bottomRight:
            return "保持图片原比例在视图 显示 右下 内容, 不缩放,相对边缘对齐, 用的少"
        @unknown default:
            return "未知类型"
        }
    }
}
